Тестирование TCP

Модифицировать драйвер RTL8211F

В версии аппаратного обеспечения V1.1.0 чип Ethernet PHY был заменен с модели RTL8211E на модель RTL8211F.

Настройка параметра TXDLY для чипа RTL8211F осуществляется через внутренние регистры схемы физического уровня связи. Это отличается от чипа RTL8211E, где настройку можно вносить с помощью аппаратных резисторов.

В драйвере PHY для системы xlnx-linux, в режиме работы интерфейса PHY_INTERFACE_MODE_GMII функция TXDLY по умолчанию отключена.

В настоящее время режим работы физического интерфейса, используемый расширительным портом стороны PL, составляет PHY_interface_MODE_GMII. В результате, при стандартной настройке драйверов, функция TXDLY чипа RTL8211F не активирована. Это может привести к несоответствию во времени передачи данных между физическим и макровыровнями сети, что, в свою очередь, негативно скажется на нормальной работе порта.

Функция, отвечающая за управление драйвером, находится в файле linux-xlnx/drivers/net/phy/realtek.c. Пожалуйста, внесите соответствующие изменения в функцию rtl8211f_config_init.

После внесения изменений необходимо перекомпилировать образ с использованием Petalinux.

TCP_SERVER

Добавление кода в проект приложения Vitis

Щелкните правой кнопкой мыши на src, чтобы создать новую папку:

image-20250710140513635

Создайте соответствующие файлы .c и .h, как показано ниже:

image-20250714152841219

Компиляция и отладка

Добавьте необходимые заголовочные файлы:

image-20250714144527291

Основной код

Плата разработки выступает в роли TCP-сервера (порт 12345) и отправляет полученные данные обратно отправителю.

 

Результаты отладки

Используйте сетевой отладчик NetAssist в качестве клиента для подключения к реализованному серверу для передачи и приема данных.

 

TCP_CLIENT

Добавление кода в проект приложения Vitis

Щелкните правой кнопкой мыши на src, чтобы создать новую папку:

image-20250710140513635

Создайте соответствующие файлы .c и .h, как показано ниже:

image-20250714152902278

Компиляция и отладка

Добавьте необходимые заголовочные файлы:

image-20250714153100559

Основной код

Плата разработки выступает в роли TCP-клиента. После подключения к серверу (который можно запустить на компьютере), она будет отправлять обратно данные, полученные от сервера.

Результаты отладки

Сначала запустите сервер на компьютере, затем запустите программу в Vitis.

После настройки IP-адреса и порта хоста он подключится к серверу. Когда сервер отправляет данные клиенту на плате разработки, плата разработки отправляет полученные данные обратно на сервер.